var recorridosRuta = null;
$("#ReservaRuta").change(function(){
	var horarioIncial = '<option value="">Elija...</option>';
	$("#ReservaHorario").html(horarioIncial);
	$("#ReservaParada").html(horarioIncial);
	var fechaEditar = $('#ReservaCalendario').val();
	$("#ReservaCalendario").val("");
	var horariosArray = [];
	var diasArray = [];
	if($("#ReservaRuta").val()==""){
		$( "#ReservaCalendario" ).datepicker( "destroy" );
		$( "#ReservaCalendario" ).removeClass("hasDatepicker");
	}else{
		$.getJSON(app.request+"/"+$("#ReservaRuta").val(), function(data){
			recorridosRuta = data;
			$.each(data, function (index, value) {
				var dias = value.Horario.dias_aplica.split("-");
				$.each(dias,function(index,value){
						diasArray[decode_dias(value)]=decode_dias(value);
				});
			});
			$( "#ReservaCalendario" ).datepicker( "destroy" );
			$( "#ReservaCalendario" ).removeClass("hasDatepicker");
			$( "#ReservaCalendario" ).datepicker({dateFormat: 'yy/mm/dd', beforeShowDay: function(date){ return [diasArray.indexOf(date.getDay()) > -1 ,""]},minDate: 0, maxDate: "+"+window.app.config.make_date_limit+"D"});
			if(window.app.editar === true && fechaEditar != ""){
				$('#ReservaCalendario').datepicker("setDate", new Date(fechaEditar) );
				$("#ReservaCalendario").change();
			}
			if (typeof window.app.postData !== "undefined") {
				if (typeof window.app.postData.Reserva !== "undefined") {
					$('#ReservaCalendario').datepicker("setDate", new Date(window.app.postData.Reserva.calendario) );
					$("#ReservaCalendario").change();
				}
			}
		});
		$.getJSON(app.rutaRequest+"/"+$("#ReservaRuta").val(), function(data2){
			$.each(data2, function (index, value) {
				$("#ReservaParada").append('<option value="'+value.id_parada+'">'+value.nombre_parada+'</option>');
			});
			if (typeof window.app.postData !== "undefined") {
				if (typeof window.app.postData.Reserva.id_parada !== "undefined") {
					$("#ReservaParada").val(window.app.postData.Reserva.id_parada);
				}
				else if (typeof window.app.postData.Reserva.parada !== "undefined") {
					$("#ReservaParada").val(window.app.postData.Reserva.parada);
				}
			}
		});
	}
});

$("#ReservaCalendario").change(function(){
	var horarioIncial = '<option value="">Elija...</option>';
	$("#ReservaHorario").html(horarioIncial);
	var horasArray = new Object;
	var today = new Date();
	today.setHours(0);
	today.setMinutes(0);
	today.setSeconds(0);
	var todaySelected = false;
	if (Date.parse(today) == Date.parse($("#ReservaCalendario").val())) {
		todaySelected = true;
	}
	$.each(recorridosRuta, function (index, value) {
		var horario = "Hora Salida:"+value.Horario.hora_salida+" Hora Estimada Llegada:"+value.Horario.hora_estimada_llegada;
		var idHora = value.Horario.id_horario;
		if(todaySelected){
			today.setHours(parseInt(value.Horario.hora_salida));
			today.setMinutes(parseInt(value.Horario.hora_salida.substring(3)));
			var today2 = new Date();
			var miliseconds = (today-today2)/(3600*1000);
			if(miliseconds>=window.app.config.make_time_deadline){
				horasArray[idHora]=horario;
			}
		}else{
			horasArray[idHora]=horario;
		}
	});
	$.each(horasArray,function(index,value){
		if(!(typeof value === "undefined")){
			$("#ReservaHorario").append('<option value="'+index+'">'+value+'</option>');
		}
	});
	if (typeof window.app.postData !== "undefined") {
		if (typeof window.app.postData.RecorridoRealizado !== "undefined") {
			$("#ReservaHorario").val(window.app.postData.RecorridoRealizado.Recorrido.id_horario);
		}
		else if (typeof window.app.postData.Reserva.horario !== "undefined") {
			$("#ReservaHorario").val(window.app.postData.Reserva.horario);
		}
	}
});

function decode_dias(dia){
	switch (dia)
	{
	case "L":
	  return 1;
	  break;
	case "M":
	  return 2;
	  break;
	case "W":
	  return 3;
	  break;
	case "J":
	  return 4;
	  break;
	case "V":
	  return 5;
	  break;
	case "S":
	  return 6;
	  break;
	case "D":
	  return 0;
	  break;  
	}
}

$(document).ready(function () {
	// if(window.app.editar === true){
		$("#ReservaRuta").change();
	// }
});


